#!/usr/bin/env python3
"""
数据库完整初始化脚本
创建所有表结构并添加基础数据
"""

from app import create_app, db
from init_admin import init_admin
from init_menus import init_menus

def init_database():
    """完整的数据库初始化"""
    app = create_app()
    
    with app.app_context():
        print("=== 数据库完整初始化 ===")
        
        try:
            # 1. 创建所有表
            print("\n1. 创建数据库表...")
            db.create_all()
            print("✅ 数据库表创建成功")
            
            # 2. 初始化管理员数据
            print("\n2. 初始化管理员数据...")
            init_admin()
            
            # 3. 初始化菜单数据
            print("\n3. 初始化菜单数据...")
            init_menus()
            
            print("\n🎉 数据库初始化完成！")
            print("\n默认登录信息:")
            print("   用户名: admin")
            print("   密码: 123456")
            
        except Exception as e:
            print(f"❌ 初始化失败: {e}")
            db.session.rollback()

if __name__ == '__main__':
    init_database() 